package com.ruoyi.pcwl.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;

/**
 * 文章信息，存储已发布的文章对象 article
 *
 * @author ruoyi
 * @date 2024-01-11
 */
public class Article extends WLBaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private String id;

    /** 文章ID */
    @Excel(name = "文章ID")
    private String articleId;

    /** 标题 */
    @Excel(name = "标题")
    private String title;

    /** 文章作者的ID */
    @Excel(name = "文章作者的ID")
    private String authorId;

    /** 作者昵称 */
    @Excel(name = "作者昵称")
    private String authorName;

    /** 文章所属频道ID */
    @Excel(name = "文章所属频道ID")
    private String channelId;

    /** 频道名称 */
    @Excel(name = "频道名称")
    private String channelName;

    /** 文章标记
            0 普通文章
            1 热点文章
            2 置顶文章
            3 精品文章
            4 大V 文章 */
    @Excel(name = "文章标记")
    private String flag;

    /** 文章图片
            多张逗号分隔 */
    @Excel(name = "文章图片")
    private String images;

    /** 文章标签最多3个 逗号分隔 */
    @Excel(name = "文章标签最多3个 逗号分隔")
    private String labels;

    /** 点赞数量 */
    @Excel(name = "点赞数量")
    private String likes;

    /** 收藏数量 */
    @Excel(name = "收藏数量")
    private String collection;

    /** 评论数量 */
    @Excel(name = "评论数量")
    private String comment;

    /** 阅读数量 */
    @Excel(name = "阅读数量")
    private String views;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdTime;

    /** 发布时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date publishTime;

    /** 同步状态 */
    @Excel(name = "同步状态")
    private Integer syncStatus;

    /** 来源 */
    @Excel(name = "来源")
    private String origin;

    /**  */
    @Excel(name = "")
    private String staticUrl;

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setArticleId(String articleId)
    {
        this.articleId = articleId;
    }

    public String getArticleId()
    {
        return articleId;
    }
    public void setTitle(String title)
    {
        this.title = title;
    }

    public String getTitle()
    {
        return title;
    }
    public void setAuthorId(String authorId)
    {
        this.authorId = authorId;
    }

    public String getAuthorId()
    {
        return authorId;
    }
    public void setAuthorName(String authorName)
    {
        this.authorName = authorName;
    }

    public String getAuthorName()
    {
        return authorName;
    }
    public void setChannelId(String channelId)
    {
        this.channelId = channelId;
    }

    public String getChannelId()
    {
        return channelId;
    }
    public void setChannelName(String channelName)
    {
        this.channelName = channelName;
    }

    public String getChannelName()
    {
        return channelName;
    }
    public void setFlag(String flag)
    {
        this.flag = flag;
    }

    public String getFlag()
    {
        return flag;
    }
    public void setImages(String images)
    {
        this.images = images;
    }

    public String getImages()
    {
        return images;
    }
    public void setLabels(String labels)
    {
        this.labels = labels;
    }

    public String getLabels()
    {
        return labels;
    }
    public void setLikes(String likes)
    {
        this.likes = likes;
    }

    public String getLikes()
    {
        return likes;
    }
    public void setCollection(String collection)
    {
        this.collection = collection;
    }

    public String getCollection()
    {
        return collection;
    }
    public void setComment(String comment)
    {
        this.comment = comment;
    }

    public String getComment()
    {
        return comment;
    }
    public void setViews(String views)
    {
        this.views = views;
    }

    public String getViews()
    {
        return views;
    }
    public void setCreatedTime(Date createdTime)
    {
        this.createdTime = createdTime;
    }

    public Date getCreatedTime()
    {
        return createdTime;
    }
    public void setPublishTime(Date publishTime)
    {
        this.publishTime = publishTime;
    }

    public Date getPublishTime()
    {
        return publishTime;
    }
    public void setSyncStatus(Integer syncStatus)
    {
        this.syncStatus = syncStatus;
    }

    public Integer getSyncStatus()
    {
        return syncStatus;
    }
    public void setOrigin(String origin)
    {
        this.origin = origin;
    }

    public String getOrigin()
    {
        return origin;
    }
    public void setStaticUrl(String staticUrl)
    {
        this.staticUrl = staticUrl;
    }

    public String getStaticUrl()
    {
        return staticUrl;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("articleId", getArticleId())
            .append("title", getTitle())
            .append("authorId", getAuthorId())
            .append("authorName", getAuthorName())
            .append("channelId", getChannelId())
            .append("channelName", getChannelName())
            .append("flag", getFlag())
            .append("images", getImages())
            .append("labels", getLabels())
            .append("likes", getLikes())
            .append("collection", getCollection())
            .append("comment", getComment())
            .append("views", getViews())
            .append("createdTime", getCreatedTime())
            .append("publishTime", getPublishTime())
            .append("syncStatus", getSyncStatus())
            .append("origin", getOrigin())
            .append("staticUrl", getStaticUrl())
            .toString();
    }
}
